Pandas হলো একটি শক্তিশালী পাইথন লাইব্রেরি যা ডেটা বিশ্লেষণ এবং প্রক্রিয়াকরণের জন্য ব্যবহৃত হয়। এটি DataFrame নামক ডেটা স্ট্রাকচার প্রদান করে, যা টেবিলের মতো ডেটা পরিচালনা করতে ব্যবহৃত হয়। Pandas এর মাধ্যমে আপনি সহজে ডেটা লোড, ফিল্টার, বিশ্লেষণ, এবং পরিবর্তন করতে পারেন।
ডেটা ফ্রেম কী?
DataFrame হলো একটি দুই-মাত্রিক (2D) আरे যা রেকর্ড (সারি) এবং কলাম দিয়ে গঠিত। এটি যেকোনো ধরনের ডেটা রাখতে পারে, যেমন সংখ্যাত্মক (numeric), স্ট্রিং (string), বা মিশ্র (mixed) ডেটা। DataFrame ব্যবহারের সুবিধা হলো, এতে সহজেই ডেটা ফিল্টার করা, সিডিং করা, সারি/কলাম যোগ করা এবং ডেটা পরিবর্তন করা যায়।
Pandas DataFrame তৈরি করা
১. ডেটা ফ্রেম তৈরি করার জন্য Pandas ইনস্টল করা
প্রথমে, যদি আপনার সিস্টেমে Pandas ইনস্টল না থাকে, তবে এটি ইনস্টল করতে হবে:
pip install pandas
২. ডেটা ফ্রেম তৈরি করা
ডেটা ফ্রেম তৈরি করতে বিভিন্ন পদ্ধতি রয়েছে, যেমন ডিকশনারি, লিস্ট, বা এনপাই অ্যারে থেকে।
উদাহরণ ১: ডিকশনারি থেকে DataFrame তৈরি করা
import pandas as pd
# একটি ডিকশনারি থেকে DataFrame তৈরি করা
data = {
'Name': ['John', 'Anna', 'Peter'],
'Age': [28, 24, 35],
'City': ['New York', 'London', 'Berlin']
}
df = pd.DataFrame(data)
# DataFrame প্রদর্শন
print(df)
আউটপুট:
Name Age City
0 John 28 New York
1 Anna 24 London
2 Peter 35 Berlin
উদাহরণ ২: লিস্ট থেকে DataFrame তৈরি করা
import pandas as pd
# একটি লিস্ট থেকে DataFrame তৈরি করা
data = [['John', 28, 'New York'], ['Anna', 24, 'London'], ['Peter', 35, 'Berlin']]
# কলামের নাম উল্লেখ করা
df = pd.DataFrame(data, columns=['Name', 'Age', 'City'])
# DataFrame প্রদর্শন
print(df)
আউটপুট:
Name Age City
0 John 28 New York
1 Anna 24 London
2 Peter 35 Berlin
Pandas DataFrame ব্যবস্থাপনা
১. DataFrame থেকে কলাম অ্যাক্সেস করা
Pandas DataFrame এর নির্দিষ্ট কলাম অ্যাক্সেস করতে খুব সহজ। কলামের নাম ব্যবহার করে আপনি ওই কলামটি সিলেক্ট করতে পারেন।
# 'Age' কলামটি অ্যাক্সেস করা
print(df['Age'])
আউটপুট:
0 28
1 24
2 35
Name: Age, dtype: int64
২. নতুন কলাম যুক্ত করা
DataFrame এ নতুন কলাম যোগ করতে খুব সহজ। আপনি নতুন কলামের নাম দিয়ে সেটি যোগ করতে পারেন।
# নতুন কলাম 'Salary' যোগ করা
df['Salary'] = [50000, 60000, 55000]
print(df)
আউটপুট:
Name Age City Salary
0 John 28 New York 50000
1 Anna 24 London 60000
2 Peter 35 Berlin 55000
৩. DataFrame থেকে সারি অ্যাক্সেস করা
DataFrame থেকে সারি (Row) সিলেক্ট করতে .iloc[] অথবা .loc[] ব্যবহার করা হয়। .iloc[] সূচক ব্যবহার করে সিলেক্ট করতে সাহায্য করে, আর .loc[] লেবেল ব্যবহার করে সিলেক্ট করতে।
# প্রথম সারিটি (0th index) প্রদর্শন করা
print(df.iloc[0])
# নামের উপর ভিত্তি করে 'Anna' সারিটি সিলেক্ট করা
print(df.loc[df['Name'] == 'Anna'])
আউটপুট:
# iloc ব্যবহার করলে:
Name John
Age 28
City New York
Salary 50000
Name: 0, dtype: object
# loc ব্যবহার করলে:
Name Age City Salary
1 Anna 24 London 60000
৪. DataFrame ফিল্টার করা
Pandas DataFrame থেকে শর্ত ভিত্তিতে সারি ফিল্টার করা খুবই সহজ।
# Age 30 এর বেশি এমন সারি সিলেক্ট করা
filtered_df = df[df['Age'] > 30]
print(filtered_df)
আউটপুট:
Name Age City Salary
2 Peter 35 Berlin 55000
৫. DataFrame এর সারি এবং কলাম সংখ্যা পাওয়া
Pandas DataFrame থেকে সারি এবং কলামের সংখ্যা জানা যায় shape অ্যাট্রিবিউট ব্যবহার করে।
# DataFrame এর সারি এবং কলাম সংখ্যা
print(df.shape)
আউটপুট:
(3, 4) # 3 সারি এবং 4 কলাম
৬. DataFrame এর সারাংশ (Summary)
DataFrame এর সারাংশ এবং বিভিন্ন পরিসংখ্যান জানতে .describe() ব্যবহার করা হয়।
# ডেটা ফ্রেমের সারাংশ
print(df.describe())
আউটপুট:
Age Salary
count 3.000000 3.000000
mean 29.000000 55000.000000
std 5.291502 5000.000000
min 24.000000 50000.000000
25% 26.000000 52500.000000
50% 28.000000 55000.000000
75% 31.500000 57500.000000
max 35.000000 60000.000000
৭. DataFrame থেকে সারি/কলাম মুছে ফেলা
ডেটা ফ্রেম থেকে সারি বা কলাম মুছে ফেলা যায় drop() ফাংশন দিয়ে।
# 'Salary' কলাম মুছে ফেলা
df = df.drop(columns=['Salary'])
# প্রথম সারি মুছে ফেলা
df = df.drop(index=0)
print(df)
আউটপুট:
Name Age City
1 Anna 24 London
2 Peter 35 Berlin
সারাংশ
Pandas লাইব্রেরি দিয়ে আপনি খুব সহজে DataFrame তৈরি এবং পরিচালনা করতে পারেন। এটি ডেটা প্রক্রিয়াকরণ এবং বিশ্লেষণের জন্য অত্যন্ত শক্তিশালী টুল, যা ডেটা ফিল্টারিং, কলাম/সারি অ্যাক্সেস, ডেটা পরিবর্তন, সারাংশ বিশ্লেষণ, এবং ডেটা ভিজ্যুয়ালাইজেশন এর জন্য ব্যবহৃত হয়। Pandas এর সাহায্যে ডেটা বৈশিষ্ট্যগতভাবে বিশ্লেষণ করা সহজ এবং কার্যকর।
Read more